home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
LOGIC Apps
/
Logic-APPLE_II_APPS.iso
/
pc
/
LOGIC Apple II 5.25" Library - DOS Part 3
/
DOS077A.dsk
/
BACKWARD MEMORY MOVE.bas
< prev
next >
Wrap
BASIC Source File
|
2012-02-16
|
1KB
|
22 lines
10 REM <CTRL-J><CTRL-M> BACKWARDS MEMORY MOVE<CTRL-J><CTRL-M> BY LEE REYNOLDS<CTRL-J><CTRL-M> CALL -APPLE * JUL/AUG 1980<CTRL-J>
100 REM <CTRL-J><CTRL-M>STORE BACKWARDS MEM MOVE ROUTINE<CTRL-J>
110 A$ = "300:84 47 A0 00 B1 3C 91 42 A5 42 D0 02 C6 43 C6 42 A5 3E C5 3C A5 3F E5 3D A5 3C D0 02 C6 3D C6 3C 90 E2 A4 47 60 N D823G"
120 FOR I = 1 TO LEN(A$): POKE 511 +I, ASC( MID$ (A$,I,1)) +128: NEXT I
130 POKE 72,0: CALL -144
140 REM <CTRL-J><CTRL-M>FOLLOWING ROUTINE SAVES Y REG.,<CTRL-M>CLEARS IT, CALLS MONITOR MEMORY<CTRL-M>MOVE ROUTINE, RESTORES Y REG.<CTRL-J>
150 A$ = "325:84 47 A0 00 20 2C FE A4 47 60 N D823G"
160 FOR I = 1 TO LEN(A$): POKE 511 +I, ASC( MID$ (A$,I,1)) +128: NEXT I
170 POKE 72,0: CALL -144
180 REM GET SOURCE, DESTINATION OF MOVE
190 INPUT "SOURCE BEGIN ADDR.?";T1: INPUT "SOURCE END ADDR.?";T2: INPUT "DESTINATION BEGIN ADDR.?";T3
200 T = T3 >T1 AND T3 <T2: REM TEST WHETHER BACKWARDS MOVE NECESSARY
210 MOVE = 805: IF NOT T THEN 240: REM ELSE USE MONITOR'S MEM. MOVE
220 REM SINCE BACKWARD MOVE, MODIFY T1, T2, T3
230 T = T1:T1 = T2:T2 = T:T3 = T3 +T1 -T2:MOVE = 768
240 GOSUB 250: END : REM DO THE MEM MOVE<CTRL-J>
250 REM <CTRL-J><CTRL-M>MEM MOVE ROUTINE<CTRL-J>
260 T = INT(T1/256): POKE 61,T: POKE 60,T1 -256 *T
270 T = INT(T2/256): POKE 63,T: POKE 62,T2 -256 *T
280 T = INT(T3/256): POKE 67,T: POKE 66,T3 -256 *T
290 PRINT PEEK(60), PEEK(61): PRINT PEEK(62), PEEK(63): PRINT PEEK(66), PEEK(67)
300 CALL MOVE: RETURN